package com.aiyige.model.tag;

/**
 * Created by zhuyakun on 2018/1/19.
 */

public class TagPopular {
    String id;
    String name;
    String groupType;
    String groupName;
    String subGroupType;
    String subGroupName;
    Integer count;
    Long createTime;
    Long updateTime;

    public TagPopular() {
    }

    private TagPopular(Builder builder) {
        setId(builder.id);
        setName(builder.name);
        setGroupType(builder.groupType);
        setGroupName(builder.groupName);
        setSubGroupType(builder.subGroupType);
        setSubGroupName(builder.subGroupName);
        setCount(builder.count);
        setCreateTime(builder.createTime);
        setUpdateTime(builder.updateTime);
    }

    public static Builder newBuilder() {
        return new Builder();
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getGroupType() {
        return groupType;
    }

    public void setGroupType(String groupType) {
        this.groupType = groupType;
    }

    public String getGroupName() {
        return groupName;
    }

    public void setGroupName(String groupName) {
        this.groupName = groupName;
    }

    public String getSubGroupType() {
        return subGroupType;
    }

    public void setSubGroupType(String subGroupType) {
        this.subGroupType = subGroupType;
    }

    public String getSubGroupName() {
        return subGroupName;
    }

    public void setSubGroupName(String subGroupName) {
        this.subGroupName = subGroupName;
    }

    public Integer getCount() {
        return count;
    }

    public void setCount(Integer count) {
        this.count = count;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public Long getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Long updateTime) {
        this.updateTime = updateTime;
    }


    public static final class Builder {
        private String id;
        private String name;
        private String groupType;
        private String groupName;
        private String subGroupType;
        private String subGroupName;
        private Integer count;
        private Long createTime;
        private Long updateTime;

        private Builder() {
        }

        public Builder id(String id) {
            this.id = id;
            return this;
        }

        public Builder name(String name) {
            this.name = name;
            return this;
        }

        public Builder groupType(String groupType) {
            this.groupType = groupType;
            return this;
        }

        public Builder groupName(String groupName) {
            this.groupName = groupName;
            return this;
        }

        public Builder subGroupType(String subGroupType) {
            this.subGroupType = subGroupType;
            return this;
        }

        public Builder subGroupName(String subGroupName) {
            this.subGroupName = subGroupName;
            return this;
        }

        public Builder count(Integer count) {
            this.count = count;
            return this;
        }

        public Builder createTime(Long createTime) {
            this.createTime = createTime;
            return this;
        }

        public Builder updateTime(Long updateTime) {
            this.updateTime = updateTime;
            return this;
        }

        public TagPopular build() {
            return new TagPopular(this);
        }
    }
}
